﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.Mvc;

namespace FlyingCircusWebIS.Models
{
    public interface IAeronaveService
    {
        List<ValidationResult> ValidarEntidade(Aeronave entidade);

        List<ValidationResult> ValidaAdicionar(Aeronave entidade);

        void Adicionar(Aeronave entidade);

        List<ValidationResult> ValidaAtualizar(Aeronave entidade);

        void Atualizar(Aeronave entidade);

        Aeronave BuscarPorId(int id);

        void AtivarPorId(int id);

        List<ValidationResult> ValidaRemoverPorId(int id);

        void RemoverPorId(int id);

        void DesativarPorId(int id);

        List<Aeronave> Listar();

        List<ModeloAeronave> ListarModeloAeronave();

        List<SelectListItem> ListarItensModeloAeronave();

        List<SelectListItem> ListarItensAeronavesParaNovo();

        List<SelectListItem> ListarItensAeronaveFormatado();

        List<SelectListItem> ListarItensAeronaveFormatadoParaFiltro();
    }
}
